﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace TimViec.NguoiDung
{
    public partial class TaoHoSoBuoc5 : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                if (Request.QueryString["hoso"] != "")
                {
                    var hosoId = Convert.ToInt32(Request.QueryString["hoso"]);
                    LoadData(hosoId);
                }
                else
                {
                    Response.Redirect("/");
                }
            }
        }

        private void LoadData(int hosoId)
        {
            var lstCapBac = BLL.Admin.DMCapBacHelper.List_DMCapBac();

            ListItem listItem= new ListItem();
            listItem.Text = "....";
            listItem.Value = "-1";
            listItem.Selected = true;
            droCapBac.DataSource = lstCapBac;
            droCapBac.DataTextField = "MoTa";
            droCapBac.DataValueField = "CapBacId";
            droCapBac.DataBind();
            droCapBac.Items.Add(listItem);

            ckblNganhNghe.DataSource = BLL.Admin.NganhNgheHelper.List_NganhNghe_ValueConfig(0);
            ckblNganhNghe.DataTextField = "Ten";
            ckblNganhNghe.DataValueField = "NganhNgheId";
            ckblNganhNghe.DataBind();

            ckblNoiLam.DataSource = BLL.Admin.TinhHelper.List_ALL_Tinh();
            ckblNoiLam.DataTextField = "Ten";
            ckblNoiLam.DataValueField = "TinhId";
            ckblNoiLam.DataBind();

            var mucTieu = BLL.NguoiDung.HoSo.LoadMucTieu(hosoId);
            if(mucTieu!=null)
            {
                hdMucTieuId.Value = mucTieu.Id.ToString();

                txtViTri.Text = mucTieu.ViTriMongMuon;
                txtMucLuongGanNhat.Text = mucTieu.MucLuongGanNhat.ToString();
                txtMucLuongTu.Text = mucTieu.MucLuongMongMuonTu.ToString();
                txtMucLuongDen.Text = mucTieu.MucLuongMongMuonTuDen.ToString();
                txtMoTa.Text = mucTieu.MucTieu;

                string[] chuoi = mucTieu.MoiLamUaThich.Split(';');
                foreach (ListItem item in ckblNoiLam.Items)
                {
                    foreach (var s in chuoi)
                    {
                        if (item.Value == s)
                        {
                            item.Selected = true;
                        }
                    }
                }

                string[] chuoi1 = mucTieu.NganhNghe.Split(';');
                foreach (ListItem item in ckblNganhNghe.Items)
                {
                    foreach (var s in chuoi1)
                    {
                        if (item.Value == s)
                        {
                            item.Selected = true;
                        }
                    }
                }

                droCapBac.SelectedValue = mucTieu.CapBacMongMuonId.ToString();

                droLoaiCongViec.SelectedValue = mucTieu.LoaiCongViecId.ToString();
            }
        }

        protected void btSave_Click(object sender, EventArgs e)
        {
            var hosoId = Convert.ToInt32(Request.QueryString["hoso"]);

            if(txtViTri.Text=="")
            {
                ScriptManager.RegisterStartupScript(this, this.GetType(), "redirectMe", "alert('Nhập vị trí mong muốn!');", true);
                txtViTri.Focus();
                return;
            }

            if (txtMucLuongTu.Text == "")
            {
                ScriptManager.RegisterStartupScript(this, this.GetType(), "redirectMe", "alert('Nhập mức lương mong muốn!');", true);
                txtMucLuongTu.Focus();
                return;
            }

            if (txtMucLuongDen.Text == "")
            {
                ScriptManager.RegisterStartupScript(this, this.GetType(), "redirectMe", "alert('Nhập mức lương mong muốn!');", true);
                txtMucLuongDen.Focus();
                return;
            }

            


            if(droCapBac.SelectedValue=="-1")
            {
                ScriptManager.RegisterStartupScript(this, this.GetType(), "redirectMe", "alert('Nhập cấp bậc mong muốn!');", true);
                droCapBac.Focus();
                return;
            }

            if (droLoaiCongViec.SelectedValue == "-1")
            {
                ScriptManager.RegisterStartupScript(this, this.GetType(), "redirectMe", "alert('Nhập loại công việc mong muốn!');", true);
                droLoaiCongViec.Focus();
                return;
            }

            string nganhNghe = "";
            string NoiLamViec = "";
            var count = 0;
            foreach (ListItem item in ckblNoiLam.Items)
            {
                if (item.Selected == true)
                {
                    count++;
                    NoiLamViec += item.Value + ";";
                }
            }
            if (count == 0)
            {
                ScriptManager.RegisterStartupScript(this, this.GetType(), "redirectMe", "alert('Chưa chọn nơi làm việc!');", true);
                ckblNoiLam.Focus();
                return;
            }

            count = 0;
            foreach (ListItem item in ckblNganhNghe.Items)
            {
                if (item.Selected == true)
                {
                    count++;
                    nganhNghe += item.Value + ";";
                }
            }
            if (count == 0)
            {
                ScriptManager.RegisterStartupScript(this, this.GetType(), "redirectMe", "alert('Chưa chọn ngành nghề!');", true);
                ckblNganhNghe.Focus();
                return;
            }

            if (txtMoTa.Text == "")
            {
                ScriptManager.RegisterStartupScript(this, this.GetType(), "redirectMe", "alert('Nhập mô tả!');", true);
                txtMucLuongDen.Focus();
                return;
            }
            //Tạo mới
            if(hdMucTieuId.Value =="-1")
            {
                BLL.NguoiDung.HoSo.AddMucTieuNgheNghiep(hosoId, txtViTri.Text, Int32.Parse(txtMucLuongGanNhat.Text),
                                                        Int32.Parse(txtMucLuongTu.Text),
                                                        Int32.Parse(txtMucLuongDen.Text),
                                                        Int32.Parse(droCapBac.SelectedValue),
                                                        Int32.Parse(droLoaiCongViec.SelectedValue), nganhNghe,
                                                        NoiLamViec, txtMoTa.Text);
                Response.Redirect("/nguoi-dung/tu-ho-so.html");
            }

            else
            {
                var id = Int32.Parse(hdMucTieuId.Value);
                BLL.NguoiDung.HoSo.UpdateMucTieuNgheNghiep(id, txtViTri.Text, Int32.Parse(txtMucLuongGanNhat.Text),
                                                           Int32.Parse(txtMucLuongTu.Text),
                                                           Int32.Parse(txtMucLuongDen.Text),
                                                           Int32.Parse(droCapBac.SelectedValue),
                                                           Int32.Parse(droLoaiCongViec.SelectedValue), nganhNghe,
                                                           NoiLamViec, txtMoTa.Text);
                Response.Redirect("/nguoi-dung/tu-ho-so.html");
            }
        }

        protected void btSaveAndContinue_Click(object sender, EventArgs e)
        {
            var hosoId = Convert.ToInt32(Request.QueryString["hoso"]);

            if (txtViTri.Text == "")
            {
                ScriptManager.RegisterStartupScript(this, this.GetType(), "redirectMe", "alert('Nhập vị trí mong muốn!');", true);
                txtViTri.Focus();
                return;
            }

            if (txtMucLuongTu.Text == "")
            {
                ScriptManager.RegisterStartupScript(this, this.GetType(), "redirectMe", "alert('Nhập mức lương mong muốn!');", true);
                txtMucLuongTu.Focus();
                return;
            }

            if (txtMucLuongDen.Text == "")
            {
                ScriptManager.RegisterStartupScript(this, this.GetType(), "redirectMe", "alert('Nhập mức lương mong muốn!');", true);
                txtMucLuongDen.Focus();
                return;
            }

            if (droCapBac.SelectedValue == "-1")
            {
                ScriptManager.RegisterStartupScript(this, this.GetType(), "redirectMe", "alert('Nhập cấp bậc mong muốn!');", true);
                droCapBac.Focus();
                return;
            }

            if (droLoaiCongViec.SelectedValue == "-1")
            {
                ScriptManager.RegisterStartupScript(this, this.GetType(), "redirectMe", "alert('Nhập loại công việc mong muốn!');", true);
                droLoaiCongViec.Focus();
                return;
            }

            string nganhNghe = "";
            string NoiLamViec = "";
            var count = 0;
            foreach (ListItem item in ckblNoiLam.Items)
            {
                if (item.Selected == true)
                {
                    count++;
                    NoiLamViec += item.Value + ";";
                }
            }
            if (count == 0)
            {
                ScriptManager.RegisterStartupScript(this, this.GetType(), "redirectMe", "alert('Chưa chọn nơi làm việc!');", true);
                ckblNoiLam.Focus();
                return;
            }

            count = 0;
            foreach (ListItem item in ckblNganhNghe.Items)
            {
                if (item.Selected == true)
                {
                    count++;
                    nganhNghe += item.Value + ";";
                }
            }
            if (count == 0)
            {
                ScriptManager.RegisterStartupScript(this, this.GetType(), "redirectMe", "alert('Chưa chọn ngành nghề!');", true);
                ckblNganhNghe.Focus();
                return;
            }

            if (txtMoTa.Text == "")
            {
                ScriptManager.RegisterStartupScript(this, this.GetType(), "redirectMe", "alert('Nhập mô tả!');", true);
                txtMucLuongDen.Focus();
                return;
            }
            //Tạo mới
            if (hdMucTieuId.Value == "-1")
            {
                BLL.NguoiDung.HoSo.AddMucTieuNgheNghiep(hosoId, txtViTri.Text, Int32.Parse(txtMucLuongGanNhat.Text),
                                                        Int32.Parse(txtMucLuongTu.Text),
                                                        Int32.Parse(txtMucLuongDen.Text),
                                                        Int32.Parse(droCapBac.SelectedValue),
                                                        Int32.Parse(droLoaiCongViec.SelectedValue), nganhNghe,
                                                        NoiLamViec, txtMoTa.Text);
                Response.Redirect("/nguoi-dung/" + hosoId + "tao-ho-so-buoc6.html");
            }

            else
            {
                var id = Int32.Parse(hdMucTieuId.Value);
                BLL.NguoiDung.HoSo.UpdateMucTieuNgheNghiep(id, txtViTri.Text, Int32.Parse(txtMucLuongGanNhat.Text),
                                                           Int32.Parse(txtMucLuongTu.Text),
                                                           Int32.Parse(txtMucLuongDen.Text),
                                                           Int32.Parse(droCapBac.SelectedValue),
                                                           Int32.Parse(droLoaiCongViec.SelectedValue), nganhNghe,
                                                           NoiLamViec, txtMoTa.Text);
                Response.Redirect("/nguoi-dung/" + hosoId + "tao-ho-so-buoc6.html");
            }
        }

        
    }
}